Metriken aus Libvirt und Operations Center

Übersicht

Das Feature ermöglicht die Bereitstellung von Metriken aus Libvirt und dem Operations Center. Diese Metriken umfassen Informationen zur Nutzung von Flavors, CPU, RAM und weiteren Ressourcen sowie Daten zu den Projektbesitzern.

Endpunkt

URL: https://https://resources._EDGE_.gecgo.net/federate

Für den Zugriff werden Zugangsdaten benötigt. Die können über den Helpdesk bezogen werden.

Beispielkonfiguration Prometheus

Weitere Details in der Prometheus Dokumentation zu Federation und scrape Konfiguration.

scrape_configs:
  - job_name: 'edge_metrics'
    scrape_interval: 15s
    honor_labels: true
    metrics_path: '/federate'
    scheme: https
    basic_auth:
      username: scrape
      password_file: ./scrape_user_edge

    params:
      'match[]':
        - '{__name__=~".+"}'

    static_configs:
      - targets:
        - 'resources._EDGE_.gecgo.net'

Metriken aus Libvirt

Die Metriken aus Libvirt bieten detaillierte Informationen zu den virtuellen Maschinen (VMs), einschließlich:

  • Genutzte Flavors: Informationen zu den zugewiesenen Ressourcenprofilen der VMs.
  • CPU-Nutzung: Aktuelle Auslastung der CPU-Ressourcen.
  • RAM-Nutzung: Aktuelle Auslastung des Arbeitsspeichers.
  • Weitere Metriken: Zusätzliche Informationen zu den VMs, die über Libvirt verfügbar sind.

Metriken aus dem Operations Center

Zusätzlich zu den Libvirt-Metriken werden auch Metriken zu den Projektbesitzern aus dem Operations Center bereitgestellt. Ein Beispiel für eine solche Metrik ist:

sql_oc_membership{job="oc-exporter",instance="de-host-rack-01",owner="jemand@userdomain.de",project_name="projectname-dea9e633-9a03-4130-900b-dfde07734bff"} 1

Diese Metrik enthält folgende Informationen:

  • Job: Der Name des Export-Jobs (oc-exporter).
  • Instance: Die Instanz-ID (de-host-rack-01).
  • Owner: Die E-Mail-Adresse des Projektbesitzers (jemand@userdomain.de).
  • Project Name: Der Name des Projekts (projectname-dea9e633-9a03-4130-900b-dfde07734bff).
  • Wert: Der Wert der Metrik (1).

Metriken

NameBeschreibungTyp
libvirt_domain_block_metaBlock device metadata info. Device name, source file, serial.gauge
libvirt_domain_block_stats_allocationOffset of the highest written sector on a block device.gauge
libvirt_domain_block_stats_capacity_bytesLogical size in bytes of the block device backing image.gauge
libvirt_domain_block_stats_flush_requests_totalTotal flush requests from a block device.counter
libvirt_domain_block_stats_flush_time_seconds_totalTotal time in seconds spent on cache flushing to a block devicecounter
libvirt_domain_block_stats_limit_burst_length_read_requests_secondsRead requests per second burst time in secondsgauge
libvirt_domain_block_stats_limit_burst_length_total_requests_secondsTotal requests per second burst time in secondsgauge
libvirt_domain_block_stats_limit_burst_length_write_requests_secondsWrite requests per second burst time in secondsgauge
libvirt_domain_block_stats_limit_burst_read_bytesRead throughput burst limit in bytes per secondgauge
libvirt_domain_block_stats_limit_burst_read_bytes_length_secondsRead throughput burst time in secondsgauge
libvirt_domain_block_stats_limit_burst_read_requestsRead requests per second burst limitgauge
libvirt_domain_block_stats_limit_burst_total_bytesTotal throughput burst limit in bytes per secondgauge
libvirt_domain_block_stats_limit_burst_total_bytes_length_secondsTotal throughput burst time in secondsgauge
libvirt_domain_block_stats_limit_burst_total_requestsTotal requests per second burst limitgauge
libvirt_domain_block_stats_limit_burst_write_bytesWrite throughput burst limit in bytes per secondgauge
libvirt_domain_block_stats_limit_burst_write_bytes_length_secondsWrite throughput burst time in secondsgauge
libvirt_domain_block_stats_limit_burst_write_requestsWrite requests per second burst limitgauge
libvirt_domain_block_stats_limit_read_bytesRead throughput limit in bytes per secondgauge
libvirt_domain_block_stats_limit_read_requestsRead requests per second limitgauge
libvirt_domain_block_stats_limit_total_bytesTotal throughput limit in bytes per secondgauge
libvirt_domain_block_stats_limit_total_requestsTotal requests per second limitgauge
libvirt_domain_block_stats_limit_write_bytesWrite throughput limit in bytes per secondgauge
libvirt_domain_block_stats_limit_write_requestsWrite requests per second limitgauge
libvirt_domain_block_stats_physicalsize_bytesPhysical size in bytes of the container of the backing image.gauge
libvirt_domain_block_stats_read_bytes_totalNumber of bytes read from a block device, in bytes.counter
libvirt_domain_block_stats_read_requests_totalNumber of read requests from a block device.counter
libvirt_domain_block_stats_read_time_seconds_totalTotal time spent on reads from a block device, in seconds.counter
libvirt_domain_block_stats_size_iops_bytesThe size of IO operations per second permitted through a block devicegauge
libvirt_domain_block_stats_write_bytes_totalNumber of bytes written to a block device, in bytes.counter
libvirt_domain_block_stats_write_requests_totalNumber of write requests to a block device.counter
libvirt_domain_block_stats_write_time_seconds_totalTotal time spent on writes on a block device, in secondscounter
libvirt_domain_info_cpu_time_seconds_totalAmount of CPU time used by the domain, in seconds.counter
libvirt_domain_info_maximum_memory_bytesMaximum allowed memory of the domain, in bytes.gauge
libvirt_domain_info_memory_usage_bytesMemory usage of the domain, in bytes.gauge
libvirt_domain_info_metaDomain metadatagauge
libvirt_domain_info_virtual_cpusNumber of virtual CPUs for the domain.gauge
libvirt_domain_info_vstateVirtual domain state. 0: no state, 1: the domain is running, 2: the domain is blocked on resource, 3: the domain is paused by user, 4: the domain is down, 5: the domain is shut off,6: the domain is crashed, 7: the domain is suspended by guest power managementgauge
libvirt_domain_interface_metaInterfaces metadata. Source bridge, target device, interface uuidgauge
libvirt_domain_interface_stats_receive_bytes_totalNumber of bytes received on a network interface, in bytes.counter
libvirt_domain_interface_stats_receive_drops_totalNumber of packet receive drops on a network interface.counter
libvirt_domain_interface_stats_receive_errors_totalNumber of packet receive errors on a network interface.counter
libvirt_domain_interface_stats_receive_packets_totalNumber of packets received on a network interface.counter
libvirt_domain_interface_stats_transmit_bytes_totalNumber of bytes transmitted on a network interface, in bytes.counter
libvirt_domain_interface_stats_transmit_drops_totalNumber of packet transmit drops on a network interface.counter
libvirt_domain_interface_stats_transmit_errors_totalNumber of packet transmit errors on a network interface.counter
libvirt_domain_interface_stats_transmit_packets_totalNumber of packets transmitted on a network interface.counter
libvirt_domain_memory_stats_actual_balloon_bytesCurrent balloon value (in bytes).gauge
libvirt_domain_memory_stats_available_bytesThe total amount of usable memory as seen by the domain. This value may be less than the amount of memory assigned to the domain if driver is in use or if the guest OS does not initialize all assigned pages. This value is expressed in bytes.gauge
libvirt_domain_memory_stats_disk_cache_bytesThe amount of memory, that can be quickly reclaimed without additional I/O (in bytes).Typically these pages are used for caching diskgauge
libvirt_domain_memory_stats_major_fault_totalPage faults occur when a process makes a valid access to virtual memory that is not available. When servicing the page fault, if is required, it is considered a major fault.counter
libvirt_domain_memory_stats_minor_fault_totalPage faults occur when a process makes a valid access to virtual memory that is not available. When servicing the page not fault, IO is required, it is considered a minor fault.counter
libvirt_domain_memory_stats_rss_bytesResident Set Size of the process running the domain. This value is in bytesgauge
libvirt_domain_memory_stats_unused_bytesThe amount of memory left completely unused by the system. Memory that is available but used for reclaimable caches should NOT be free. This value is expressed in bytes.gauge
libvirt_domain_memory_stats_usable_bytesHow much the balloon can be inflated without pushing the guest system to swap, corresponds to ‘Available’ in /proc/meminfogauge
libvirt_domain_memory_stats_used_percentThe amount of memory in percent, that used by domain.gauge
libvirt_domain_vcpu_cpuReal CPU number, or one of the values from virVcpuHostCpuStategauge
libvirt_domain_vcpu_stateVCPU state. 0: offline, 1: running, 2: blockedgauge
libvirt_domain_vcpu_time_seconds_totalAmount of CPU time used by the domain’s VCPU, in seconds.counter
libvirt_domain_vcpu_wait_seconds_totalVcpu’s wait_sum metric. CONFIG_SCHEDSTATS has to be enabledcounter
libvirt_upWhether scraping libvirt’s metrics was successful.gauge
libvirt_versions_infoVersions of virtualization componentsgauge
sql_oc_membershipProject owner information of Operations Centercounter